1
A Natureza Centrada na Memória do Desempenho da GPU
AI024Lesson 5
00:00

Na aceleração por GPU, devemos abandonar a mentalidade de "computação primeiro". O desempenho moderno é determinado por Gestão de Memória: a coordenação da alocação, sincronização e otimização dos dados entre o host (CPU) e o dispositivo (GPU).

1. A Disparidade entre Memória e Computação

Enquanto o rendimento aritmético da GPU ($TFLOPS$) aumentou exponencialmente, a largura de banda da memória ($GB/s$) cresceu muito mais lentamente. Isso cria uma lacuna em que as unidades de execução muitas vezes estão "privadas", aguardando dados chegarem da VRAM. Consequentemente, programação para GPU frequentemente é programação de memória.

2. O Modelo Roofline

Este modelo visualiza a relação entre Intensidade Aritmética (FLOPs/Byte) e desempenho. As aplicações normalmente se dividem em duas categorias:

  • Limitado pela Memória: Limitado pela largura de banda (a inclinação íngreme).
  • Limitado pela Computação: Limitado pelos TFLOPS máximos (o teto horizontal).
Intensidade Aritmética (FLOPs/Byte)Desempenho (GFLOPS)Limitado pela MemóriaLimitado pela Computação

3. A Taxa de Movimentação de Dados

O principal gargalo de desempenho raramente é a matemática; é a latência e o custo energético de mover um byte pela barramento PCIe ou da HBM. Códigos de alto desempenho priorizam a localização dos dados e minimizam as transferências entre host e dispositivo.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>